RepLLaMA - Fine-Tuning LLaMA for Multi-Stage Text Retrieval

논문의 목적

어떻게 했을까?

Retriever

훈련 Loss로는 Contrastive Loss 중 하나인 InfoNCE loss 함수를 사용하였다.

L(Q,D+,DN)=logeSim(Q,D+)eSim(Q,D+)+DiDNeSim(Q,Di)

여기서 query Q에 대한 positive passage D+와 negative passage의 집합 DN을 이용하여 각각의 similarity score를 계산한다. 간단히 알 수 있듯이, positive passage와의 유사도 점수를 최대화하고, negative passage와의 유사도 점수를 최소화 하는 방향으로 학습이 진행된다.
이 때, negative passage들에는 아주 반대의 의미를 가지고 있는 hard negative와, 단순히 positive가 아닌데 batch에 담겨 있는 passage인 in-batch negative가 모두 포함된다.

Reranker

리랭커도 Retriever와 유사하게, 마지막 eos 토큰의 representation을 사용한다.
다만, 추가적으로 Linear layer를 추가하여 각 쿼리와 도큐먼트 간의 관계도를 0~1 사이의 값으로 나타내도록 한다.

다른 점은, loss로 contrastive loss가 아닌 binary classification에 쓰이는 loss를 사용하고, positive 단락 및 hard-negative 단락들만 사용하여 훈련한다.